$(function () {
    $(".allcheck").on('change', function () {
        $(".checkshop").prop("checked", $(this).prop("checked"))
        $(".checkshop").change()
    })
    // 店铺的全选按钮
    $(".checkshop").on('change', function () {
        $(this).parent().siblings(".shopgoodList").find(".checkitem").prop("checked", $(this).prop("checked"))
    })
    $(".checkitem").on('change', function () {
        let parent = $(this).parents(".shopgoodList")
        let checklen = parent.find(".checkitem").length;
        let checkedlen = parent.find(".checkitem:checked").length;
        // 每个店铺的全选，每个店铺钟的商品全选上，那么店铺的全选勾选
        if (checkedlen == checklen) {
            parent.siblings(".shopname").find(".checkshop").prop("checked", true)
        } else {
            parent.siblings(".shopname").find(".checkshop").prop("checked", false)
        }
        // 整个购物车的全选按钮。
        if ($(".checkitem:checked").length == $(".checkitem").length) {
            $(".allcheck").prop("checked", true)
        } else {
            $(".allcheck").prop("checked", false)
        }
    })

    // 商品数量的加减,先获取框的数值
    function subtotal(dom, num) {
        var prices = dom.parents(".pQuantity").siblings(".pPrice").find("span").text()
        var counts = dom.parents(".pQuantity").siblings(".pCount").find("span")
        let result = (prices * num).toFixed(2)
        counts.text(result)
    }

    $(".reduce").on('click', function () {
        let thats = $(this).siblings(`input[type='text']`)
        let num = thats.val()
        if (num > 1) {
            num--;
            subtotal($(this), num)
            thats.val(num)
            num == 1 ? $(this).addClass('disabled') : "";
        } else {
            $(this).addClass('disabled')
        }


    })

    $(".add").on('click', function () {

        let num = $(this).siblings(`input[type='text']`).val()
        if ($(this).siblings(".reduce").hasClass("disabled")) {
            $(this).siblings(".reduce").removeClass('disabled')
        }
        num++;
        // 计算小计的金额
        subtotal($(this), num)
        $(this).siblings(`input[type='text']`).val(num)
    })

    $(".goodsnum").on('change', function () {
        if (isNaN($(this).val())) {
            console.log("2")
            alert("请输入数字")
            $(this).val("1");
            return;
        }
        if (parseInt($(this).val()) < 1) {
            alert("商品数量不能小于1")
            $(this).val("1");
            return;
        }
        if (parseInt($(this).val()) > 1) {
            console.log("1")
            if ($(this).siblings(".reduce").hasClass("disabled")) {
                $(this).siblings(".reduce").removeClass('disabled')
            }
        }
        subtotal($(this),$(this).val())
    })
})